#ifndef _VOLUMEMANAGER_H
#define _VOLUMEMANAGER_H

//#include "block3D.h"
//#include "octree.h"
#include "volume3D.h"
#include <list>
#include <map>


/*
What VolumeManager do



*/


class volumeManager
{
public:
	volumeManager();
	~volumeManager();

	bool addRawVolume(char* volumeName, char* filename, int z, int y, int x, int voxelByteSzie);
	bool getDataByName(char* volumeName, void*& buffer, int &z, int &y, int &x, int &voxelByteSize);


	//tree creation
	//bool generateOctree(volume3D *vol);

	////
	//block3D* getDownSampleFromOctreeBlock(block3D *b000, block3D *b001, //bzyx
	//																		block3D *b010, block3D *b011,
	//																		block3D *b100, block3D *b101,
	//																		block3D *b110, block3D *b111,)

private:
	std::map<std::string, volume3D*> _volumeTable;
	

};

#endif